Add member to vector to indicate read/write capability of each format.
authorrobertl <robertl@f51c46e8-681c-474f-0cfe-069cfd0219fb>
Mon, 10 Jan 2005 14:40:32 +0000 (14:40 +0000)
committerrobertl <robertl@f51c46e8-681c-474f-0cfe-069cfd0219fb>
Mon, 10 Jan 2005 14:40:32 +0000 (14:40 +0000)
44 files changed:
gpsbabel/Makefile
gpsbabel/brauniger_iq.c
gpsbabel/cetus.c
gpsbabel/coastexp.c
gpsbabel/copilot.c
gpsbabel/defs.h
gpsbabel/delgpl.c
gpsbabel/easygps.c
gpsbabel/garmin.c
gpsbabel/gcdb.c
gpsbabel/geo.c
gpsbabel/geoniche.c
gpsbabel/glogbook.c
gpsbabel/gpilots.c
gpsbabel/gpspilot.c
gpsbabel/gpsutil.c
gpsbabel/gpx.c
gpsbabel/hiketech.c
gpsbabel/holux.c
gpsbabel/hsa_ndv.c
gpsbabel/html.c
gpsbabel/igc.c
gpsbabel/magnav.c
gpsbabel/magproto.c
gpsbabel/mapopolis.c
gpsbabel/mapsend.c
gpsbabel/mapsource.c
gpsbabel/navicache.c
gpsbabel/netstumbler.c
gpsbabel/nmea.c
gpsbabel/ozi.c
gpsbabel/palmdoc.c
gpsbabel/pcx.c
gpsbabel/psitrex.c
gpsbabel/psp.c
gpsbabel/quovadis.c
gpsbabel/saroute.c
gpsbabel/shape.c
gpsbabel/text.c
gpsbabel/tiger.c
gpsbabel/tmpro.c
gpsbabel/tpg.c
gpsbabel/vcf.c
gpsbabel/xcsv.c

index ba6396fd5eb0f3940623792fdbbfaf8bb600840c..006b797f0ab80af17cae750777b2af502dcece60 100644 (file)
@@ -26,7 +26,8 @@ FMTS=magproto.o gpx.o geo.o mapsend.o mapsource.o garmin_tables.o \
        xcsv.o gcdb.o tiger.o internal_styles.o easygps.o quovadis.o \
        gpilots.o saroute.o navicache.o psitrex.o geoniche.o delgpl.o \
        ozi.o nmea.o text.o html.o palmdoc.o netstumbler.o hsa_ndv.o \
-       igc.o brauniger_iq.o shape.o hiketech.o glogbook.o coastexp.o
+       igc.o brauniger_iq.o shape.o hiketech.o glogbook.o coastexp.o \
+       vcf.o 
 
 FILTERS=position.o duplicate.o arcdist.o polygon.o smplrout.o reverse_route.o sort.o stackfilter.o
 
@@ -89,8 +90,8 @@ dep:
        (echo -n "internal_styles.c: mkstyle.sh " ; echo style/*.style ; /bin/echo -e '\t./mkstyle.sh > internal_styles.c || (rm -f internal_styles.c ; exit 1)' ) >> /tmp/dep
        echo Edit Makefile and bring in /tmp/dep
 
-VERSIONU=1_2_5_beta12222004
-VERSIOND=1.2.5_beta12222004
+VERSIONU=1_2_5_beta01032005
+VERSIOND=1.2.5_beta01032005
 #VERSIONU=1_2_4
 #VERSIOND=1.2.4
 
index 2d06c5753e2cc81d33d13a2f99a34001d138a734..e42d820c24af938527b72e6af0b12f0219281a21 100644 (file)
@@ -268,6 +268,7 @@ static arglist_t brauniger_iq_args[] = {
 
 ff_vecs_t brauniger_iq_vecs = {
     ff_type_serial,
+    FF_CAP_RW_ALL,
     rd_init,
     NULL,
     rd_deinit,
index a85c9d4877ca4e37c6eb5ead1d8277b2f2579b4e..f46cc2b078b8b6e76206701ad61e2b94e2f3b2f7 100644 (file)
@@ -416,6 +416,7 @@ data_write(void)
 
 ff_vecs_t cetus_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index 68687d0aef89f8ea9399d15da8eb2523b7b2e68b..370e09623e0952851f38553e936c8b04c5b0d38c 100755 (executable)
@@ -622,6 +622,7 @@ ce_write(void)
 
 ff_vecs_t coastexp_vecs = {
        ff_type_file,
+       { ff_cap_read|ff_cap_write, ff_cap_none, ff_cap_read|ff_cap_write },
        ce_rd_init,
        ce_wr_init,
        ce_rd_deinit,
index 10d028da44f7398e3ea86a223654aefe774c9d60..abb9bb0fc662f98b1baaf693d4190d6c9ef868a5 100644 (file)
@@ -193,6 +193,7 @@ data_write(void)
 
 ff_vecs_t copilot_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index e349b5d6b8a6d37b38d7db3936f4834cf8e01b9a..e2d9c491613dfd2fac4f0e1d126a1e85ab7f7998 100644 (file)
@@ -371,11 +371,29 @@ typedef enum {
        ff_type_serial,         /* format describes a serial protoco (GUI can display port names) */
 } ff_type;
 
+typedef enum {
+       ff_cap_rw_wpt,
+       ff_cap_rw_trk,
+       ff_cap_rw_rte
+} ff_cap_array;
+
+typedef enum {
+       ff_cap_none,
+       ff_cap_read = 1,
+       ff_cap_write = 2
+} ff_cap;
+#define FF_CAP_RW_ALL \
+       { ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_write }
+
+#define FF_CAP_RW_WPT \
+       { ff_cap_read | ff_cap_write, ff_cap_none, ff_cap_none}
+
 /*
  *  Describe the file format to the caller.
  */
 typedef struct ff_vecs {
        ff_type type;
+       ff_cap cap[3];
        ff_init rd_init;
        ff_init wr_init;
        ff_deinit rd_deinit;
index dd01469753a1678b3da9d2a888f744b549e255e2..f9d68c23344cdb7e447f34823ee1a66020b5da65 100644 (file)
@@ -114,6 +114,7 @@ gpl_write(void)
 
 ff_vecs_t gpl_vecs = {
        ff_type_file,
+       { ff_cap_none, ff_cap_read | ff_cap_write, ff_cap_none },
        gpl_rd_init,    
        gpl_wr_init,    
        gpl_rd_deinit,  
index 827d2057f9cb4f65a1fb2df54be64787cc8d8807..b64373b1efbd42700910b04ebb6a25ebf51835c5 100644 (file)
@@ -263,6 +263,7 @@ data_write(void)
 
 ff_vecs_t easygps_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index cd913acd4e3159c3e97b1f9310b02ee38ebd7783..f321d1f3f4edbb56afcd7e50ff1eef4334a65bd3 100644 (file)
@@ -624,6 +624,7 @@ data_write()
 
 ff_vecs_t garmin_vecs = {
        ff_type_serial,
+       FF_CAP_RW_ALL,
        rw_init,
        rw_init,
        rw_deinit,
index bde86f8efe8624c11718a155b301fd27ffa70339..a67230628da8f06ddf3210d62ce298abc4cacd92 100644 (file)
@@ -331,6 +331,7 @@ data_write(void)
 
 ff_vecs_t gcdb_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index f6b4c094f652dc8fe243f422cd03d76e7b005019..5caf4c0d9f94cc571c7951c3ab12ff01d9edf9f6 100644 (file)
@@ -198,6 +198,7 @@ geo_write(void)
 
 ff_vecs_t geo_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        geo_rd_init,    
        geo_wr_init,    
        geo_rd_deinit,
index 60f955c70b3f3b6790ab2d3e70d907bf4572aacb..bd1041856ed2d060008cd5388fe44adbfc6538f5 100644 (file)
@@ -526,6 +526,7 @@ data_write(void)
 ff_vecs_t geoniche_vecs =
 {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index cc281356ccbb9a185dff2049be8616cfa393cbe3..8a99914b037d9a354a51949d65ab44800e672dc3 100644 (file)
@@ -166,6 +166,7 @@ void        gl_trk_alt(const char *args, const char **unused)
 
 ff_vecs_t glogbook_vecs = {
         ff_type_file,
+       FF_CAP_RW_ALL,
         glogbook_rd_init,
         glogbook_wr_init,
         glogbook_rd_deinit,
index a5fe7fe52e4d08f3a5630708495dcd6579702a5f..bf1dda40c3cf09670e4daa0134ed770ba38e99be 100644 (file)
@@ -449,6 +449,7 @@ data_write(void)
 
 ff_vecs_t gpilots_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index 7863af855d9ed0d813b8a4f3f657de8a8a07d52a..2c74f9966461b78c4a38656cf6b4b423ac4e41f7 100644 (file)
@@ -247,6 +247,7 @@ data_write(void)
 
 ff_vecs_t gpspilot_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index eeec5659f1f12d57c3dbc5ea0efa23e28d476861..1a56354b3a4c4ab63f0f3bedf058e873b930731d 100644 (file)
@@ -141,6 +141,7 @@ data_write(void)
 
 ff_vecs_t gpsutil_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index eab64107aaf513c51b066f3082f97372766a508d..9f6c5a38baa0bd3ba9c013248b45e109bc46ddc1 100644 (file)
@@ -1296,6 +1296,7 @@ arglist_t gpx_args[] = {
 
 ff_vecs_t gpx_vecs = {
        ff_type_file,
+       FF_CAP_RW_ALL,
        gpx_rd_init,    
        gpx_wr_init,    
        gpx_rd_deinit,  
index 97f11066d711099bcca6426e5011f11ccc1a66b9..67377cde220081732015c5c18110235993d41834 100644 (file)
@@ -229,6 +229,7 @@ void        ht_trk_alt(const char *args, const char **unused)
 
 ff_vecs_t hiketech_vecs = {
         ff_type_file,
+       { ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_none },
         hiketech_rd_init,
         hiketech_wr_init,
         hiketech_rd_deinit,
index 41735b2d4c9fc070f14d60a3b73eb2aa8723cd25..5b5d21efbaed1475e6459b882732b6531cd4d0b7 100644 (file)
@@ -291,6 +291,7 @@ static void data_write(void)
 
 ff_vecs_t holux_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index 7cfa2c66d4963e34477562ef6d2ed93fd8477580..5fad20f30518575d33f2644c456c8a6ee9d3cee8 100644 (file)
@@ -345,6 +345,7 @@ hsa_ndv_write(void)
 
 ff_vecs_t HsaEndeavourNavigator_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        hsa_ndv_rd_init,        
        hsa_ndv_wr_init,        
        hsa_ndv_rd_deinit,
index bc00b547e75e89c62f832d5f643576d4e39b932e..aad90cfcef90eff3b3183cafc1cbdd206b736978 100644 (file)
@@ -254,6 +254,7 @@ data_write(void)
 
 ff_vecs_t html_vecs = {
        ff_type_file,
+       { ff_cap_write, ff_cap_none, ff_cap_none },
        NULL,
        wr_init,
        NULL,
index 5ccbfb0c6c169a926c9fe3d4dcd9d6ac077990e9..ceaeae8cde8da5c2e3204876c065828a4966a86d 100644 (file)
@@ -894,6 +894,7 @@ static arglist_t igc_args[] = {
 
 ff_vecs_t igc_vecs = {
     ff_type_file,
+    { ff_cap_none , ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_write },
     rd_init,
     wr_init,
     rd_deinit,
index 392974e40e22797d582a2434a3f9c6dd5e948ca8..c3342595314be3568a222ed1752f6a7b94a48087 100644 (file)
@@ -263,6 +263,7 @@ data_write(void)
 
 ff_vecs_t magnav_vec = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index 775bacd7e9113877ff2f96e0156b7a638553f256..2faee6eca31ce320c33568e279e622d8c425d214 100644 (file)
@@ -1388,6 +1388,7 @@ mag_write(void)
  */
 ff_vecs_t mag_svecs = {
        ff_type_serial,
+       FF_CAP_RW_ALL,
        mag_rd_init,    
        mag_wr_init,    
        mag_deinit,     
@@ -1400,6 +1401,7 @@ ff_vecs_t mag_svecs = {
 
 ff_vecs_t mag_fvecs = {
        ff_type_file,
+       FF_CAP_RW_ALL,
        mag_rd_init,    
        mag_wr_init,    
        mag_deinit,     
index fecb23f871c1a8ce0a8e2d8ec264fb12d09bf690..d89b0baab53e64af375052132b8bf89ac5dbe71b 100644 (file)
@@ -311,6 +311,7 @@ data_write(void)
 
 ff_vecs_t mapopolis_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index 7477a043f68b290f416f45f495e4fbf54e19f6ea..c7e24febaff68585b4ce9180d5759a172297479e 100644 (file)
@@ -584,6 +584,7 @@ mapsend_wpt_write(void)
 
 ff_vecs_t mapsend_vecs = {
        ff_type_file,
+       FF_CAP_RW_ALL,
        mapsend_rd_init,
        mapsend_wr_init,
        mapsend_rd_deinit,
index c4f0f1adeecf827284da402b3432e3efb63fac63..a7a2df5ac40644b6798e0fb812a7ecac8c83fa41 100644 (file)
@@ -2174,6 +2174,7 @@ mps_write(void)
 
 ff_vecs_t mps_vecs = {
        ff_type_file,
+       FF_CAP_RW_ALL,
        mps_rd_init,
        mps_wr_init,
        mps_rd_deinit,
index 0d42a38bab8fa8cbd5851f03b1942fb86163d87f..eb134c21f4899251d15666a93467faf15933c122 100644 (file)
@@ -256,6 +256,7 @@ nav_write(void)
 
 ff_vecs_t navicache_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        nav_rd_init,    
        nav_wr_init,    
        nav_rd_deinit,
index 1674215e60187e6d0e976b64db07d2cee8163896..5c5489d3687d6de829e5f44f87d02388cd358bbe 100644 (file)
@@ -293,6 +293,7 @@ fix_netstumbler_dupes(void)
 
 ff_vecs_t netstumbler_vecs = {
        ff_type_file,
+       { ff_cap_write, ff_cap_none, ff_cap_none },
        rd_init,
        NULL,
        rd_deinit,
index 3b0f136ae4837def9465b55bb382b6bc72a72517..b42fa24f59ac68bdd3db48d3a5f6f50bfc65a970 100644 (file)
@@ -447,6 +447,7 @@ nmea_write()
 
 ff_vecs_t nmea_vecs = {
        ff_type_file,
+       { ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_write, ff_cap_none},
        nmea_rd_init,   
        nmea_wr_init,   
        nmea_rd_deinit, 
index ff9487571706a5a35174feca17155aca4ab28d4a..4debbb81d54b4858432d255f23f28b36cee2a580 100644 (file)
@@ -692,6 +692,7 @@ data_write(void)
 
 ff_vecs_t ozi_vecs = {
     ff_type_file,
+    FF_CAP_RW_WPT,
     rd_init,
     wr_init,
     rd_deinit,
index 40cf79b003c554b2e20b6a333daee3a18d0b3a9d..578c21aac66c1a591bfa7d15b875b38cd63e3a65 100644 (file)
@@ -604,6 +604,7 @@ data_write(void)
 
 ff_vecs_t palmdoc_vecs = {
        ff_type_file,
+       { ff_cap_write, ff_cap_none, ff_cap_none},
        NULL,
        wr_init,
        NULL,
index 4b4997b6dbb8571bfec15886e306c283329668d7..27a04ae9b208dcda1d5d772baab0ced42d44d614 100644 (file)
@@ -266,6 +266,7 @@ fprintf(file_out,
 
 ff_vecs_t pcx_vecs = {
        ff_type_file,
+       { ff_cap_read | ff_cap_write, ff_cap_read | ff_cap_write, ff_cap_none },
        rd_init,
        wr_init,
        rd_deinit,
index 9166f830f63764c00e956a8f3feec65dfebae414..3be021c4ca408e6d2d30a490c0d0ee4e601b07fa 100755 (executable)
@@ -799,6 +799,7 @@ psit_write(void)
 
 ff_vecs_t psit_vecs = {
        ff_type_file,
+       FF_CAP_RW_ALL,
        psit_rd_init,
        psit_wr_init,
        psit_rd_deinit,
index 01fde6645da8dad98034381123923ae2713e135e..89103c81b49064a19057b16ad8558b85e9a3292b 100644 (file)
@@ -459,6 +459,7 @@ psp_write(void)
 
 ff_vecs_t psp_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        psp_rd_init,
        psp_wr_init,
        psp_rd_deinit,
index a5274f801b5de14785c3fa34d666d4d158625c8c..164e7307c79743d77cd7ee5b30cd3f59912442d5 100644 (file)
@@ -285,6 +285,7 @@ data_write(void)
 
 ff_vecs_t quovadis_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index 23152112e2d645673039bd430c5504bf787e84a4..4bc5faca8b8b8ee1427c794d2e96c685487cedf1 100644 (file)
@@ -270,6 +270,7 @@ wr_init(const char *fname)
 
 ff_vecs_t saroute_vecs = {
        ff_type_file,
+       { ff_cap_none, ff_cap_read, ff_cap_none},
        rd_init,
        wr_init,
        rd_deinit,
index 0da74b97c3e34f22fde9a009be7fdfff408fe16f..14a35318a5064ab3f33685eb3e651378556b320a 100644 (file)
@@ -190,6 +190,7 @@ my_write(void)
 
 ff_vecs_t shape_vecs = {
        ff_type_internal,
+       FF_CAP_RW_ALL,
        my_rd_init,     
        my_wr_init,     
        my_rd_deinit,
index b369e75002055a24640a9bf6d355c6d811c19303..4bd5f556506c70185e04ecf8f3f5707ea5e58655 100644 (file)
@@ -220,6 +220,7 @@ data_write(void)
 
 ff_vecs_t text_vecs = {
        ff_type_file,
+       { ff_cap_write, ff_cap_none, ff_cap_none},
        NULL,
        wr_init,
        NULL,
index e0fdfd4f10e2ee376075dbd3cfbdbfdda584b77b..f723a8951e4b582d26caf826bae7bad52a43b13f 100644 (file)
@@ -277,6 +277,7 @@ data_write(void)
 
 ff_vecs_t tiger_vecs = {
        ff_type_file, 
+       FF_CAP_RW_WPT,
        rd_init,
        wr_init,
        rd_deinit,
index e9968814d9539dd72ee9b7cd0f15561f033e1678..708dd9abd678e864a7e2a0265d54e7accac0294e 100644 (file)
@@ -244,6 +244,7 @@ data_write(void)
 
 ff_vecs_t tmpro_vecs = {
     ff_type_file,
+    FF_CAP_RW_WPT,
     rd_init,
     wr_init,
     rd_deinit,
index d9eb11c7c5d00a364865a3e05ebb1332f18b1186..e9e5a1a57b891f15e5cfd067c945124329476c73 100644 (file)
@@ -355,6 +355,7 @@ tpg_write(void)
 
 ff_vecs_t tpg_vecs = {
        ff_type_file,
+       FF_CAP_RW_WPT,
        tpg_rd_init,
        tpg_wr_init,
        tpg_rd_deinit,
index 8c1ad9a413770045cf9c5bc1092d13ffce879466..2ffbc79a9931c249e463d10919a3af53f54b2ac9 100644 (file)
@@ -132,6 +132,7 @@ data_write(void)
 
 ff_vecs_t vcf_vecs = {
        ff_type_file,
+       { ff_cap_write, ff_cap_none, ff_cap_none},
        NULL,
        wr_init,
        NULL,
index 1628ece0dd1684ac8f64e0400d4135ef8e365cc3..a3489a8e5206725ec67961669bd0fb10ba42315b 100644 (file)
@@ -562,6 +562,7 @@ xcsv_wr_deinit(void)
 
 ff_vecs_t xcsv_vecs = {
     ff_type_internal,
+    FF_CAP_RW_WPT, /* This is a bit of a lie for now... */
     xcsv_rd_init,
     xcsv_wr_init,
     xcsv_rd_deinit,